
/*
   strict mode 严格模式,这种模式使得Javascript在更严格的条件下运行。
   使用严格模式:
        - 消除Javascript语法的一些不合理、不严谨之处
        - 消除代码运行的一些不安全之处
        - 提高编译器效率，增加运行速度
*/
"use strict";

/*
   代码中的import、from、class、extends、以及 () =>箭头函数等新语法都是ES2015中的特性
   ES2015是JavaScript语言的下一代标准
*/

// 导入 react 中的  component（组件）
import React, { Component } from 'react';

// 导入 react-native 中的 控件:view,text,textinput,listview,stylesheet,image,navigator,navigatorIOS
import { AppRegistry, View, Text, TextInput, ListView, StyleSheet, Image, Navigator, NavigatorIOS } from 'react-native';

// 导入 src文件夹下的 workflowlist、workflowdetail  两个js文件
import WorkflowList from './src/WorkflowList';
import WorkflowDetail from './src/WorkflowDetail'

// 定义 AppNavigator 类 ,返回 NavigatorIOS控件
class AppNavigator extends Component {
  
    render() {
      return (
        //  初始路径 组件:workflowlist , 标题为:待办列表
        <NavigatorIOS initialRoute={{component:WorkflowList, title:'待办列表'}}
        //  设置style、tintColor、barTintColor、titleTextColor 等属性
         style={appStyles.navigator}
         tintColor='white'
         titleTextColor='white'
         barTintColor='#3399FF'
         renderScene={ (route, navigator) => {
            let Component = route.component;
            if (route) {
              return <Component {...route.params} navigator={navigator} />
            }
         }
        }>
        </NavigatorIOS>
      );
    }
}

// 自定义样式
const appStyles = StyleSheet.create({
  navigator:{
    flex:1,
  }
})

//AppRegistry模块则是用来告知React Native哪一个组件被注册为整个应用的根容器,一般在整个应用里AppRegistry.registerComponent这个方法只会调用一次。 
AppRegistry.registerComponent('Hello', () => AppNavigator);

